package edu.gtcfla.km.admin.appmodules.service;

import java.util.Set;

import org.vsg.module.resources.component.AssociationClass;

import edu.gtcfla.km.admin.appmodules.vo.RegisterMenuResourceView;
import edu.gtcfla.km.admin.appmodules.vo.RegisterUrlResourceView;

/**
 * @author Bill Vison
 *
 */
public interface RegisterResourceService {

	
	/**
	 * 
	 * @param moduleId
	 * @return
	 */
	Set<RegisterUrlResourceView> listAndShowUrlResourcesViewInModule(String moduleId);
	
	
	Set<RegisterMenuResourceView> listAndShowMenuResourcesViewInModule(String moduleId);
	
	
	String getModuleIdByRegMenuCode(String menuCode);
	
	
	AssociationClass getRegAssoClassByKeyId(String id);
	
	/**
	 * register all the  resource 
	 * @param moduleRes
	 * @param moduleId
	 * @return
	 */
	boolean registerAllResource(String moduleRes , String moduleId);
	
	
	/**
	 * unregister all the resource
	 * @param moduleRes
	 * @param moduleId
	 * @return
	 */
	boolean unregisterAllResource(String moduleRes , String moduleId);
	
	
	void refleshCache() throws Exception;
	
}
